package independence.chronos
{
	import independence.core.IndyObject;
	
	/**
	 * <code>DateValue</code> serves as a data object when doing arithmetic operations
	 * on <code>Date</code> objects.
	 * 
	 * @author	TK, TK Assembled for Independence Glory.
	 */
	public class DateValue extends IndyObject
	{
		private var _millis:Number;
		
		private var _seconds:Number;
		
		private var _minutes:Number;
		
		private var _hours:Number;
		
		private var _days:Number;
		
		private var _weeks:Number;
		
		private var _months:Number;
		
		private var _years:Number;
		
		public function DateValue()
		{
			
		}
		
		public function setup(millis:Number = 0, seconds:Number = 0, minutes:Number = 0, 
								hours:Number = 0, days:Number = 0, weeks:Number = 0, months:Number = 0, years:Number = 0):DateValue
		{
			this.millis = millis;
			this.seconds = seconds;
			this.minutes = minutes;
			this.hours = hours;
			this.days = days;
			this.weeks = weeks;
			this.months = months;
			this.years = years;
			return this;
		}
		
		public function get millis():Number { return _millis; }
		public function set millis(value:Number):void { _millis = value; }
	
		public function get seconds():Number { return _seconds; }
		public function set seconds(value:Number):void { _seconds = value; }
		
		public function get minutes():Number { return _minutes; }
		public function set minutes(value:Number):void { _minutes = value; }
		
		public function get hours():Number { return _hours; }
		public function set hours(value:Number):void { _hours = value; }
		
		public function get days():Number { return _days; }
		public function set days(value:Number):void { _days = value; }
		
		public function get weeks():Number { return _weeks; }
		public function set weeks(value:Number):void { _weeks = value; }
		
		public function get months():Number { return _months; }
		public function set months(value:Number):void { _months = value; }
		
		public function get years():Number { return _years; }
		public function set years(value:Number):void { _years = value; }
	}
}